Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Оголошення та структура класу

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2024
Тип роботи:
Лабораторна робота
Предмет:
Системи ТЗІ
Група:
СА

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ ”ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра “Інформаційні системи та мережі” Лабораторна робота №2 Оголошення та структура класу Мета роботи полягає у вивченні оголошення класу та рівнів захисту його елементів. Послідовність роботи 1. Ознайомитися з особливостями оголошення класу та його об’єктів. 2. Згідно із завданням написати програму мовою С++ та реалізувати її на комп’ютері. 3. Оформити звіт по роботі Завдання 16. Розробити клас – РЯДОК СИМВОЛІВ. У закритій частині визначити вказівник на символьний тип (на початок рядка). Визначити конструктори, деструктори та методи введення-виведення, конкатенацій рядка, порівняння рядків, перевірки входження підрядка у рядок. Текст програми #include <iostream> #include <math.h> using namespace std; class STRING{ private: char * str; public: STRING() { str = NULL; } STRING(char * _str) { str = new char[strlen(_str)]; strcpy(str, _str); } ~STRING() { } void Concat(const STRING&); int Compare(const STRING&); bool Include(const STRING&); friend istream& operator>>(istream&, STRING&); friend ostream& operator<<(ostream&, STRING&); }; void STRING::Concat(const STRING& b) { char * strN = new char[strlen(str)+strlen(b.str)]; strcpy(strN, str); strcat(strN, b.str); str = strN; } int STRING::Compare(const STRING& b) { return strcmp(str, b.str); } bool STRING::Include(const STRING& b) { int n = strlen(str), m = strlen(b.str); for (int i = 0; i < n; i++) { int j = 0; while(i+j <n && j<m && str[i+j] == b.str[j]) j++; if(j == m) return true; } return false; } istream& operator>>(istream& stream, STRING& p){ char *c = new char[100]; cout<<"Enter string: "; stream>>c; p.str = new char[strlen(c)]; strcpy(p.str, c); delete [] c; return stream; } ostream& operator<<(ostream& stream, STRING& p){ stream<<"\""<<p.str<<"\""; return stream; } void main(){ STRING s1, s2("123456"), s3("999"); cout<<"Enter S1:\n"; cin>>s1; cout<<"S1: "<<s1<<"\tS2: "<<s2<<"\tS3: "<<s3<<endl; cout<<s2<<" Include "<< s3 <<" - "<<s2.Include(s3)<<endl; cout<<s2<<" Include "<< s1 <<" - "<<s2.Include(s1)<<endl; cout<<s2<<" Concat "<< s1 <<" - "; s2.Concat(s1); cout<<s2<<endl; cout<<s2<<" Include "<< s3 <<" - "<<s2.Include(s1)<<endl; cout<<endl; cout<<s2<<" Compare "<< s3 <<" - "<<s2.Compare(s3)<<endl; cout<<s2<<" Compare "<< s2 <<" - "<<s2.Compare(s2)<<endl; cout<<s3<<" Compare "<< s2 <<" - "<<s3.Compare(s2)<<endl; system("pause"); } Результат виконання / Висновок При виконанні даної лабораторної роботи я вивчив оголошення класу та рівні захисту його елементів.
Антиботан аватар за замовчуванням

05.12.2015 11:12

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини